import 'package:flutterproject/generated/json/base/json_field.dart';
import 'package:flutterproject/generated/json/order_detail_bean.g.dart';
import 'dart:convert';

@JsonSerializable()
class OrderDetailBean {

	int? id;
	int? createTime;
	String? orderNo;
	String? totalAmount;
	int? state;
	int? productId;
	String? productTag;
	String? productName;
	int? productNum;
	String? productDescription;
	int? payTime;
	dynamic expressTime;
	dynamic finishTime;
	String? expressNo;
	String? expressName;
	String? recName;
	String? recTel;
	String? recAddrBase;
	String? recAddrDetail;
  
  OrderDetailBean();

  factory OrderDetailBean.fromJson(Map<String, dynamic> json) => $OrderDetailBeanFromJson(json);

  Map<String, dynamic> toJson() => $OrderDetailBeanToJson(this);

  OrderDetailBean copyWith({int? id, int? createTime, String? orderNo, String? totalAmount, int? state, int? productId, String? productTag, String? productName, int? productNum, String? productDescription, int? payTime, dynamic expressTime, dynamic finishTime, String? expressNo, String? expressName, String? recName, String? recTel, String? recAddrBase, String? recAddrDetail}) {
      return OrderDetailBean()..id= id ?? this.id
			..createTime= createTime ?? this.createTime
			..orderNo= orderNo ?? this.orderNo
			..totalAmount= totalAmount ?? this.totalAmount
			..state= state ?? this.state
			..productId= productId ?? this.productId
			..productTag= productTag ?? this.productTag
			..productName= productName ?? this.productName
			..productNum= productNum ?? this.productNum
			..productDescription= productDescription ?? this.productDescription
			..payTime= payTime ?? this.payTime
			..expressTime= expressTime ?? this.expressTime
			..finishTime= finishTime ?? this.finishTime
			..expressNo= expressNo ?? this.expressNo
			..expressName= expressName ?? this.expressName
			..recName= recName ?? this.recName
			..recTel= recTel ?? this.recTel
			..recAddrBase= recAddrBase ?? this.recAddrBase
			..recAddrDetail= recAddrDetail ?? this.recAddrDetail;
  }
    
  @override
  String toString() {
    return jsonEncode(this);
  }
}